package com.nuoniu.sibanyun.entity.erp;

import com.baomidou.mybatisplus.annotation.TableField;
import com.baomidou.mybatisplus.annotation.TableName;
import com.nuoniu.sibanyun.common.BaseEntity;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import lombok.EqualsAndHashCode;
import lombok.experimental.Accessors;

import java.time.LocalDateTime;
import java.util.List;

/**
 * <p>
 *
 * </p>
 *
 * @author baiqiang
 * @since 2021-01-19
 */
@Data
@EqualsAndHashCode(callSuper = true)
@Accessors(chain = true)
@TableName("pub_report_design")
@ApiModel(value="ErpReportDesign对象", description="")
public class ErpReportDesign extends BaseEntity {

    private static final long serialVersionUID = 1L;

    @ApiModelProperty(value = "公司ID")
    @TableField("company_id")
    private Integer companyId;

    @ApiModelProperty(value = "公司名称")
    @TableField("company_name")
    private String companyName;

    @ApiModelProperty(value = "账套ID")
    @TableField("account_id")
    private Integer accountId;

    @ApiModelProperty(value = "报表编码")
    @TableField("report_code")
    private String reportCode;

    @ApiModelProperty(value = "字段来源")
    @TableField("field_source")
    private String fieldSource;

    @ApiModelProperty(value = "表名")
    @TableField("table_name")
    private String tableName;

    @ApiModelProperty(value = "表层级（从1开始）")
    @TableField("table_level")
    private Integer tableLevel;

    @ApiModelProperty(value = "连接方式")
    @TableField("join_type")
    private String joinType;

    @ApiModelProperty(value = "连接字段")
    @TableField("join_on")
    private String joinOn;

    @ApiModelProperty(value = "字段编码")
    @TableField("code")
    private String code;

    @ApiModelProperty(value = "字段名称")
    @TableField("sys_name")
    private String sysName;

    @ApiModelProperty(value = "字段名称")
    @TableField("name")
    private String name;

    @ApiModelProperty(value = "排序")
    @TableField("sort")
    private Integer sort;

    @ApiModelProperty(value = "状态(0:正常 1:删除 2.停用)")
    @TableField("status")
    private Boolean status;

    @ApiModelProperty(value = "列宽")
    @TableField("column_width")
    private Integer columnWidth;

    @ApiModelProperty(value = "控件类型")
    @TableField("column_type")
    private String columnType;

    @ApiModelProperty(value = "字段值")
    @TableField("val")
    private String val;

    @ApiModelProperty(value = "是否锁定（0：否，1：是）")
    @TableField("on_locked")
    private Boolean onLocked;

    @ApiModelProperty(value = "是否显示 (0：否，1：是）")
    @TableField("on_show")
    private Boolean onShow;

    @ApiModelProperty(value = "是否搜索")
    @TableField("on_search")
    private Boolean onSearch;

    @ApiModelProperty(value = "是否分组")
    @TableField("on_group")
    private Boolean onGroup;

    @ApiModelProperty(value = "是否可以汇总(0：否，1：是）")
    @TableField("is_summary")
    private Boolean isSummary;

    @ApiModelProperty(value = "汇总方式(汇总值、平均值、最大值、最小值)")
    @TableField("summary_type")
    private String summaryType;

    @ApiModelProperty(value = "是否 开启汇总")
    @TableField("on_summary")
    private Boolean onSummary;

    @ApiModelProperty(value = "描述")
    @TableField("remarks")
    private String remarks;

    @ApiModelProperty(value = "普通值")
    @TableField(exist = false)
    private String value;

    @ApiModelProperty(value = "显示值")
    @TableField(exist = false)
    private String showValue;

    @ApiModelProperty(value = "时间范围值")
    @TableField(exist = false)
    private Object[] rangDateVal;


}
